namespace ext.form
{
	using System;
	using System.Runtime.CompilerServices;
	using System.Html;
	using System.Collections;
	
	
	/// <summary>
	/// Encapsulates the DOM &amp;lt;form&gt; element at the heart of the {@link Ext.form.FormPanel FormPanel} class, and provides
	/// input field management, validation, submission, and form loading services.  By default, Ext Forms are submitted through Ajax, using an instance of {@link Ext.form.Action.Submit}.
	/// To enable normal browser submission of an Ext Form, use the {@link #standardSubmit} config option.  File Uploads  {@link #fileUpload File uploads} are not performed using Ajax submission, that
	/// is they are not performed using XMLHttpRequests. Instead the form is submitted in the standard
	/// manner with the DOM &amp;lt;form&gt; element temporarily modified to have its
	/// target set to refer
	/// to a dynamically generated, hidden &amp;lt;iframe&gt; which is inserted into the document
	/// but removed after the return data has been gathered.  The server response is parsed by the browser to create the document for the IFRAME. If the
	/// server is using JSON to send the return object, then the
	/// Content-Type header
	/// must...
	/// </summary>
	/// <htmlSummary>
	/// &lt;p&gt;Encapsulates the DOM &amp;lt;form&gt; element at the heart of the {@link Ext.form.FormPanel FormPanel} class, and provides
	/// input field management, validation, submission, and form loading services.&lt;/p&gt;
	/// &lt;p&gt;By default, Ext Forms are submitted through Ajax, using an instance of {@link Ext.form.Action.Submit}.
	/// To enable normal browser submission of an Ext Form, use the {@link #standardSubmit} config option.&lt;/p&gt;
	/// &lt;p&gt;&lt;b&gt;&lt;u&gt;File Uploads&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
	/// &lt;p&gt;{@link #fileUpload File uploads} are not performed using Ajax submission, that
	/// is they are &lt;b&gt;not&lt;/b&gt; performed using XMLHttpRequests. Instead the form is submitted in the standard
	/// manner with the DOM &lt;tt&gt;&amp;lt;form&gt;&lt;/tt&gt; element temporarily modified to have its
	/// &lt;a href=&quot;http://www.w3.org/TR/REC-html40/present/frames.html#adef-target&quot;&gt;target&lt;/a&gt; set to refer
	/// to a dynamically generated, hidden &lt;tt&gt;&amp;lt;iframe&gt;&lt;/tt&gt; which is inserted into the document
	/// but removed after the return data has been gathered.&lt;/p&gt;
	/// &lt;p&gt;The server response is parsed by the browser to create the document for the IFRAME. If the
	/// server is using JSON to send the return object, then the
	/// &lt;a href=&quot;http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17&quot;&gt;Content-Type&lt;/a&gt; header
	/// must be set to &quot;text/html&quot; in order to tell the browser to insert the text unchanged into the document body.&lt;/p&gt;
	/// &lt;p&gt;Characters which are significant to an HTML parser must be sent as HTML entities, so encode
	/// &quot;&amp;lt;&quot; as &quot;&amp;amp;lt;&quot;, &quot;&amp;amp;&quot; as &quot;&amp;amp;amp;&quot; etc.&lt;/p&gt;
	/// &lt;p&gt;The response text is retrieved from the document, and a fake XMLHttpRequest object
	/// is created containing a &lt;tt&gt;responseText&lt;/tt&gt; property in order to conform to the
	/// requirements of event handlers and callbacks.&lt;/p&gt;
	/// &lt;p&gt;Be aware that file upload packets are sent with the content type &lt;a href=&quot;http://www.faqs.org/rfcs/rfc2388.html&quot;&gt;multipart/form&lt;/a&gt;
	/// and some server technologies (notably JEE) may require some custom processing in order to
	/// retrieve parameter names and parameter values from the packet content.&lt;/p&gt;
	/// </htmlSummary>
	/// <definedin>src\widgets\form\BasicForm.js</definedin>
	[ScriptName("BasicForm")]
	[ScriptNamespace("Ext.form")]
	[Imported()]
	public partial class BasicForm : ext.util.Observable
	{
		
		#region Constructors
		/// <summary>Constructor</summary>
		/// <param name="el">The form element or its id</param>
		/// <param name="config">Configuration options</param>
		public BasicForm(object el, ext.form.BasicForm_Configuration config)
		{
		}
		
		/// <summary>Constructor</summary>
		public BasicForm()
		{
		}
		#endregion
		
		#region Fields
		/// <summary>Fires before any action is performed. Return false to cancel the action.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("beforeactionEventName")]
		public const string BeforeactionEventName = "beforeaction";
		
		/// <summary>Fires when an action fails.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("actionfailedEventName")]
		public const string ActionfailedEventName = "actionfailed";
		
		/// <summary>Fires when an action is completed.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("actioncompleteEventName")]
		public const string ActioncompleteEventName = "actioncomplete";
		
		/// <summary>The request method to use (GET or POST) for form actions if one isn&apos;t supplied in the action options.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("method")]
		public string Method;
		
		/// <summary>
		/// An Ext.data.DataReader (e.g. {@link Ext.data.XmlReader}) to be used to read
		/// data when executing &apos;load&apos; actions. This is optional as there is built-in
		/// support for processing JSON. For additional information on using an XMLReader
		/// see the example provided in examples/form/xml-form.html.
		/// </summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("reader")]
		public ext.data.DataReader Reader;
		
		/// <summary>
		/// An Ext.data.DataReader (e.g. {@link Ext.data.XmlReader}) to be used to
		/// read field error messages returned from &apos;submit&apos; actions. This is optional
		/// as there is built-in support for processing JSON.  The Records which provide messages for the invalid Fields must use the
		/// Field name (or id) as the Record ID, and must contain a field called &apos;msg&apos;
		/// which contains the error message.  The errorReader does not have to be a full-blown implementation of a
		/// DataReader. It simply needs to implement a read(xhr) function
		/// which returns an Array of Records in an object with the following
		/// structure:  
		/// {
		/// records: recordArray
		/// }
		/// </summary>
		/// <htmlSummary>
		/// &lt;p&gt;An Ext.data.DataReader (e.g. {@link Ext.data.XmlReader}) to be used to
		/// read field error messages returned from &apos;submit&apos; actions. This is optional
		/// as there is built-in support for processing JSON.&lt;/p&gt;
		/// &lt;p&gt;The Records which provide messages for the invalid Fields must use the
		/// Field name (or id) as the Record ID, and must contain a field called &apos;msg&apos;
		/// which contains the error message.&lt;/p&gt;
		/// &lt;p&gt;The errorReader does not have to be a full-blown implementation of a
		/// DataReader. It simply needs to implement a &lt;tt&gt;read(xhr)&lt;/tt&gt; function
		/// which returns an Array of Records in an object with the following
		/// structure:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;
		/// {
		/// records: recordArray
		/// }
		/// &lt;/code&gt;&lt;/pre&gt;
		/// </htmlSummary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("errorReader")]
		public ext.data.DataReader ErrorReader;
		
		/// <summary>
		/// The URL to use for form actions if one isn&apos;t supplied in the
		/// {@link #doAction doAction} options.
		/// </summary>
		/// <htmlSummary>
		/// The URL to use for form actions if one isn&apos;t supplied in the
		/// &lt;code&gt;{@link #doAction doAction} options&lt;/code&gt;.
		/// </htmlSummary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("url")]
		public string Url;
		
		/// <summary>
		/// Set to true if this form is a file upload.
		/// File uploads are not performed using normal &apos;Ajax&apos; techniques, that is they are not
		/// performed using XMLHttpRequests. Instead the form is submitted in the standard manner with the
		/// DOM &amp;lt;form&gt; element temporarily modified to have its
		/// target set to refer
		/// to a dynamically generated, hidden &amp;lt;iframe&gt; which is inserted into the document
		/// but removed after the return data has been gathered.  The server response is parsed by the browser to create the document for the IFRAME. If the
		/// server is using JSON to send the return object, then the
		/// Content-Type header
		/// must be set to &quot;text/html&quot; in order to tell the browser to insert the text unchanged into the document body.  Characters which are significant to an HTML parser must be sent as HTML entities, so encode
		/// &quot;&amp;lt;&quot; as &quot;&amp;amp;lt;&quot;, &quot;&amp;amp;&quot; as &quot;&amp;amp;amp;&quot; etc.  The response text is retrieved from the document, and a fake XMLHttpRequest object
		/// is created containing a responseText property...
		/// </summary>
		/// <htmlSummary>
		/// Set to true if this form is a file upload.
		/// &lt;p&gt;File uploads are not performed using normal &apos;Ajax&apos; techniques, that is they are &lt;b&gt;not&lt;/b&gt;
		/// performed using XMLHttpRequests. Instead the form is submitted in the standard manner with the
		/// DOM &lt;tt&gt;&amp;lt;form&gt;&lt;/tt&gt; element temporarily modified to have its
		/// &lt;a href=&quot;http://www.w3.org/TR/REC-html40/present/frames.html#adef-target&quot;&gt;target&lt;/a&gt; set to refer
		/// to a dynamically generated, hidden &lt;tt&gt;&amp;lt;iframe&gt;&lt;/tt&gt; which is inserted into the document
		/// but removed after the return data has been gathered.&lt;/p&gt;
		/// &lt;p&gt;The server response is parsed by the browser to create the document for the IFRAME. If the
		/// server is using JSON to send the return object, then the
		/// &lt;a href=&quot;http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17&quot;&gt;Content-Type&lt;/a&gt; header
		/// must be set to &quot;text/html&quot; in order to tell the browser to insert the text unchanged into the document body.&lt;/p&gt;
		/// &lt;p&gt;Characters which are significant to an HTML parser must be sent as HTML entities, so encode
		/// &quot;&amp;lt;&quot; as &quot;&amp;amp;lt;&quot;, &quot;&amp;amp;&quot; as &quot;&amp;amp;amp;&quot; etc.&lt;/p&gt;
		/// &lt;p&gt;The response text is retrieved from the document, and a fake XMLHttpRequest object
		/// is created containing a &lt;tt&gt;responseText&lt;/tt&gt; property in order to conform to the
		/// requirements of event handlers and callbacks.&lt;/p&gt;
		/// &lt;p&gt;Be aware that file upload packets are sent with the content type &lt;a href=&quot;http://www.faqs.org/rfcs/rfc2388.html&quot;&gt;multipart/form&lt;/a&gt;
		/// and some server technologies (notably JEE) may require some custom processing in order to
		/// retrieve parameter names and parameter values from the packet content.&lt;/p&gt;
		/// </htmlSummary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("fileUpload")]
		public bool FileUpload;
		
		/// <summary>Parameters to pass with all requests. e.g. baseParams: {id: &apos;123&apos;, foo: &apos;bar&apos;}.  Parameters are encoded as standard HTTP parameters using {@link Ext#urlEncode}.</summary>
		/// <htmlSummary>
		/// &lt;p&gt;Parameters to pass with all requests. e.g. baseParams: {id: &apos;123&apos;, foo: &apos;bar&apos;}.&lt;/p&gt;
		/// &lt;p&gt;Parameters are encoded as standard HTTP parameters using {@link Ext#urlEncode}.&lt;/p&gt;
		/// </htmlSummary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("baseParams")]
		public object BaseParams;
		
		/// <summary>Timeout for form actions in seconds (default is 30 seconds).</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("timeout")]
		public System.Number Timeout;
		
		/// <summary>
		/// If specified load and submit actions will be handled
		/// with {@link Ext.form.Action.DirectLoad} and {@link Ext.form.Action.DirectSubmit}.
		/// Methods which have been imported by Ext.Direct can be specified here to load and submit
		/// forms.
		/// Such as the following: 
		/// api: {
		/// load: App.ss.MyProfile.load,
		/// submit: App.ss.MyProfile.submit
		/// }
		///  Load actions can use {@link #paramOrder} or {@link #paramsAsHash}
		/// to customize how the load method is invoked.
		/// Submit actions will always use a standard form submit. The formHandler configuration must
		/// be set on the associated server-side method which has been imported by Ext.Direct
		/// </summary>
		/// <htmlSummary>
		/// If specified load and submit actions will be handled
		/// with {@link Ext.form.Action.DirectLoad} and {@link Ext.form.Action.DirectSubmit}.
		/// Methods which have been imported by Ext.Direct can be specified here to load and submit
		/// forms.
		/// Such as the following:&lt;pre&gt;&lt;code&gt;
		/// api: {
		/// load: App.ss.MyProfile.load,
		/// submit: App.ss.MyProfile.submit
		/// }
		/// &lt;/code&gt;&lt;/pre&gt;
		/// &lt;p&gt;Load actions can use &lt;code&gt;{@link #paramOrder}&lt;/code&gt; or &lt;code&gt;{@link #paramsAsHash}&lt;/code&gt;
		/// to customize how the load method is invoked.
		/// Submit actions will always use a standard form submit. The formHandler configuration must
		/// be set on the associated server-side method which has been imported by Ext.Direct&lt;/p&gt;
		/// </htmlSummary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <optional>Optional Field</optional>
		[ScriptName("api")]
		public object Api;
		
		/// <summary>
		/// A list of params to be executed server side.
		/// Defaults to undefined. Only used for the {@link #api}load configuration.
		/// </summary>
		/// <htmlSummary>
		/// &lt;p&gt;A list of params to be executed server side.
		/// Defaults to &lt;tt&gt;undefined&lt;/tt&gt;. Only used for the &lt;code&gt;{@link #api}&lt;/code&gt;
		/// &lt;code&gt;load&lt;/code&gt; configuration.&lt;/p&gt;
		/// &lt;br&gt;&lt;p&gt;Specify the params in the order in which they must be executed on the
		/// server-side as either (1) an Array of String values, or (2) a String of params
		/// delimited by either whitespace, comma, or pipe. For example,
		/// any of the following would be acceptable:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;
		/// paramOrder: [&apos;param1&apos;,&apos;param2&apos;,&apos;param3&apos;]
		/// paramOrder: &apos;param1 param2 param3&apos;
		/// paramOrder: &apos;param1,param2,param3&apos;
		/// paramOrder: &apos;param1|param2|param&apos;
		/// &lt;/code&gt;&lt;/pre&gt;
		/// </htmlSummary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("paramOrder")]
		public ext.auto.System_String_Or_System_Array ParamOrder;
		
		/// <summary>
		/// Only used for the {@link #api}load configuration. Send parameters as a collection of named
		/// arguments (defaults to false). Providing a
		/// {@link #paramOrder} nullifies this configuration.
		/// </summary>
		/// <htmlSummary>
		/// Only used for the &lt;code&gt;{@link #api}&lt;/code&gt;
		/// &lt;code&gt;load&lt;/code&gt; configuration. Send parameters as a collection of named
		/// arguments (defaults to &lt;tt&gt;false&lt;/tt&gt;). Providing a
		/// &lt;tt&gt;{@link #paramOrder}&lt;/tt&gt; nullifies this configuration.
		/// </htmlSummary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("paramsAsHash")]
		public bool ParamsAsHash;
		
		/// <summary>The default title to show for the waiting message box (defaults to &apos;Please Wait...&apos;)</summary>
		/// <htmlSummary>The default title to show for the waiting message box (defaults to &lt;tt&gt;&apos;Please Wait...&apos;&lt;/tt&gt;)</htmlSummary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("waitTitle")]
		public string WaitTitle;
		
		/// <summary>
		/// If set to true, {@link #reset}() resets to the last loaded
		/// or {@link #setValues}() data instead of when the form was first created. Defaults to false.
		/// </summary>
		/// <htmlSummary>
		/// If set to &lt;tt&gt;true&lt;/tt&gt;, {@link #reset}() resets to the last loaded
		/// or {@link #setValues}() data instead of when the form was first created. Defaults to &lt;tt&gt;false&lt;/tt&gt;.
		/// </htmlSummary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("trackResetOnLoad")]
		public bool TrackResetOnLoad;
		
		/// <summary>
		/// If set to true, standard HTML form submits are used instead
		/// of XHR (Ajax) style form submissions. Defaults to false.
		/// </summary>
		/// <htmlSummary>
		/// &lt;p&gt;If set to &lt;tt&gt;true&lt;/tt&gt;, standard HTML form submits are used instead
		/// of XHR (Ajax) style form submissions. Defaults to &lt;tt&gt;false&lt;/tt&gt;.&lt;/p&gt;
		/// &lt;br&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; When using &lt;code&gt;standardSubmit&lt;/code&gt;, the
		/// &lt;code&gt;options&lt;/code&gt; to &lt;code&gt;{@link #submit}&lt;/code&gt; are ignored because
		/// Ext&apos;s Ajax infrastracture is bypassed. To pass extra parameters (e.g.
		/// &lt;code&gt;baseParams&lt;/code&gt; and &lt;code&gt;params&lt;/code&gt;), utilize hidden fields
		/// to submit extra data, for example:&lt;/p&gt;
		/// &lt;pre&gt;&lt;code&gt;
		/// new Ext.FormPanel({
		/// standardSubmit: true,
		/// baseParams: {
		/// foo: &apos;bar&apos;
		/// },
		/// {@link url}: &apos;myProcess.php&apos;,
		/// items: [{
		/// xtype: &apos;textfield&apos;,
		/// name: &apos;userName&apos;
		/// }],
		/// buttons: [{
		/// text: &apos;Save&apos;,
		/// handler: function(){
		/// var fp = this.ownerCt.ownerCt,
		/// form = fp.getForm();
		/// if (form.isValid()) {
		/// // check if there are baseParams and if
		/// // hiddent items have been added already
		/// if (fp.baseParams &amp;&amp; !fp.paramsAdded) {
		/// // add hidden items for all baseParams
		/// for (i in fp.baseParams) {
		/// fp.add({
		/// xtype: &apos;hidden&apos;,
		/// name: i,
		/// value: fp.baseParams[i]
		/// });
		/// }
		/// fp.doLayout();
		/// // set a custom flag to prevent re-adding
		/// fp.paramsAdded = true;
		/// }
		/// form.{@link #submit}();
		/// }
		/// }
		/// }]
		/// });
		/// &lt;/code&gt;&lt;/pre&gt;
		/// </htmlSummary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("standardSubmit")]
		public bool StandardSubmit;
		#endregion
		
		#region Properties
		/// <summary>A {@link Ext.util.MixedCollection MixedCollection} containing all the Ext.form.Fields in this form.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("items")]
		[IntrinsicProperty()]
		public ext.util.MixedCollection Items
		{
			get
			{
				throw new System.Exception("Imported - not implemented");
			}
			set
			{
			}
		}
		
		/// <summary>
		/// By default wait messages are displayed with Ext.MessageBox.wait. You can target a specific
		/// element by passing it or its id or mask the form itself by passing in true.
		/// </summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("waitMsgTarget")]
		[IntrinsicProperty()]
		public object WaitMsgTarget
		{
			get
			{
				throw new System.Exception("Imported - not implemented");
			}
			set
			{
			}
		}
		#endregion
		
		#region Methods
		/// <summary>Get the HTML form Element</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("getEl")]
		public ext.Element GetEl()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Returns true if client-side validation on the form is successful.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("isValid")]
		public bool IsValid()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Returns true if any fields in this form have changed from their original values.  Note that if this BasicForm was configured with {@link #trackResetOnLoad} then the
		/// Fields&apos; original values are updated when the values are loaded by {@link #setValues}
		/// or {@link #loadRecord}.
		/// </summary>
		/// <htmlSummary>
		/// &lt;p&gt;Returns true if any fields in this form have changed from their original values.&lt;/p&gt;
		/// &lt;p&gt;Note that if this BasicForm was configured with {@link #trackResetOnLoad} then the
		/// Fields&apos; &lt;i&gt;original values&lt;/i&gt; are updated when the values are loaded by {@link #setValues}
		/// or {@link #loadRecord}.&lt;/p&gt;
		/// </htmlSummary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("isDirty")]
		public bool IsDirty()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Shortcut to {@link #doAction do} a {@link Ext.form.Action.Submit submit action}.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="options">
		/// The options to pass to the action (see {@link #doAction} for details).&lt;br&gt;
		/// &lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; this is ignored when using the {@link #standardSubmit} option.&lt;/p&gt;
		/// &lt;p&gt;The following code:&lt;/p&gt;<c>
		/// myFormPanel.getForm().submit({
		/// clientValidation: true,
		/// url: &apos;updateConsignment.php&apos;,
		/// params: {
		/// newStatus: &apos;delivered&apos;
		/// },
		/// success: function(form, action) {
		/// Ext.Msg.alert(&apos;Success&apos;, action.result.msg);
		/// },
		/// failure: function(form, action) {
		/// switch (action.failureType) {
		/// case Ext.form.Action.CLIENT_INVALID:
		/// Ext.Msg.alert(&apos;Failure&apos;, &apos;Form fields may not be submitted with invalid values&apos;);
		/// break;
		/// case Ext.form.Action.CONNECT_FAILURE:
		/// Ext.Msg.alert(&apos;Failure&apos;, &apos;Ajax communication failed&apos;);
		/// break;
		/// case Ext.form.Action.SERVER_INVALID:
		/// Ext.Msg.alert(&apos;Failure&apos;, action.result.msg);
		/// }
		/// }
		/// });
		/// </c>&lt;/pre&gt;
		/// would process the following server response for a successful submission:<c>
		/// {
		/// &quot;success&quot;:true, // note this is Boolean, not string
		/// &quot;msg&quot;:&quot;Consignment updated&quot;
		/// }
		/// </c>&lt;/pre&gt;
		/// and the following server response for a failed submission:<c>
		/// {
		/// &quot;success&quot;:false, // note this is Boolean, not string
		/// &quot;msg&quot;:&quot;You do not have permission to perform this operation&quot;
		/// }
		/// </c>&lt;/pre&gt;
		/// </param>
		/// <returns>this</returns>
		[ScriptName("submit")]
		public ext.form.BasicForm Submit(object options)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Shortcut to {@link #doAction do} a {@link Ext.form.Action.Load load action}.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="options">The options to pass to the action (see {@link #doAction} for details)</param>
		/// <returns>this</returns>
		[ScriptName("load")]
		public ext.form.BasicForm Load(object options)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Persists the values in this form into the passed {@link Ext.data.Record} object in a beginEdit/endEdit block.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="record">The record to edit</param>
		/// <returns>this</returns>
		[ScriptName("updateRecord")]
		public ext.form.BasicForm UpdateRecord(ext.data.RecordClass record)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Loads an {@link Ext.data.Record} into this form by calling {@link #setValues} with the
		/// {@link Ext.data.Record#data record data}.
		/// See also {@link #trackResetOnLoad}.
		/// </summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="record">The record to load</param>
		/// <returns>this</returns>
		[ScriptName("loadRecord")]
		public ext.form.BasicForm LoadRecord(ext.data.RecordClass record)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Find a {@link Ext.form.Field} in this form.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="id">
		/// The value to search for (specify either a {@link Ext.Component#id id},
		/// {@link Ext.grid.Column#dataIndex dataIndex}, {@link Ext.form.Field#getName name or hiddenName}).
		/// </param>
		[ScriptName("findField")]
		public ext.form.Field FindField(string id)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Clears all invalid messages in this form.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <returns>this</returns>
		[ScriptName("clearInvalid")]
		public ext.form.BasicForm ClearInvalid()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Resets this form.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <returns>this</returns>
		[ScriptName("reset")]
		public ext.form.BasicForm Reset()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Removes a field from the items collection (does NOT remove its markup).</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="field"></param>
		/// <returns>this</returns>
		[ScriptName("remove")]
		public ext.form.BasicForm Remove(ext.form.Field field)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Removes all fields from the collection that have been destroyed.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("cleanDestroyed")]
		public void CleanDestroyed()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Iterates through the {@link Ext.form.Field Field}s which have been {@link #add add}ed to this BasicForm,
		/// checks them for an id attribute, and calls {@link Ext.form.Field#applyToMarkup} on the existing dom element with that id.
		/// </summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <returns>this</returns>
		[ScriptName("render")]
		public ext.form.BasicForm Render()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Calls {@link Ext#apply} for all fields in this form with the passed object.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="values"></param>
		/// <returns>this</returns>
		[ScriptName("applyToFields")]
		public ext.form.BasicForm ApplyToFields(object values)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Calls {@link Ext#applyIf} for all field in this form with the passed object.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="values"></param>
		/// <returns>this</returns>
		[ScriptName("applyIfToFields")]
		public ext.form.BasicForm ApplyIfToFields(object values)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Performs a predefined action ({@link Ext.form.Action.Submit} or
		/// {@link Ext.form.Action.Load}) or a custom extension of {@link Ext.form.Action}
		/// to perform application-specific processing.
		/// </summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="actionName">
		/// The name of the predefined action type,
		/// or instance of {@link Ext.form.Action} to perform.
		/// </param>
		/// <param name="options">
		/// The options to pass to the {@link Ext.form.Action}.
		/// All of the config options listed below are supported by both the
		/// {@link Ext.form.Action.Submit submit} and {@link Ext.form.Action.Load load}
		/// actions unless otherwise noted (custom actions could also accept
		/// other config options):&lt;ul&gt;
		///
		/// &lt;li&gt;&lt;b&gt;url&lt;/b&gt; : String&lt;div class=&quot;sub-desc&quot;&gt;The url for the action (defaults
		/// to the form&apos;s {@link #url}.)&lt;/div&gt;&lt;/li&gt;
		///
		/// &lt;li&gt;&lt;b&gt;method&lt;/b&gt; : String&lt;div class=&quot;sub-desc&quot;&gt;The form method to use (defaults
		/// to the form&apos;s method, or POST if not defined)&lt;/div&gt;&lt;/li&gt;
		///
		/// &lt;li&gt;&lt;b&gt;params&lt;/b&gt; : String/Object&lt;div class=&quot;sub-desc&quot;&gt;&lt;p&gt;The params to pass
		/// (defaults to the form&apos;s baseParams, or none if not defined)&lt;/p&gt;
		/// &lt;p&gt;Parameters are encoded as standard HTTP parameters using {@link Ext#urlEncode}.&lt;/p&gt;&lt;/div&gt;&lt;/li&gt;
		///
		/// &lt;li&gt;&lt;b&gt;headers&lt;/b&gt; : Object&lt;div class=&quot;sub-desc&quot;&gt;Request headers to set for the action
		/// (defaults to the form&apos;s default headers)&lt;/div&gt;&lt;/li&gt;
		///
		/// &lt;li&gt;&lt;b&gt;success&lt;/b&gt; : Function&lt;div class=&quot;sub-desc&quot;&gt;The callback that will
		/// be invoked after a successful response (see top of
		/// {@link Ext.form.Action.Submit submit} and {@link Ext.form.Action.Load load}
		/// for a description of what constitutes a successful response).
		/// The function is passed the following parameters:&lt;ul&gt;
		/// &lt;li&gt;&lt;tt&gt;form&lt;/tt&gt; : Ext.form.BasicForm&lt;div class=&quot;sub-desc&quot;&gt;The form that requested the action&lt;/div&gt;&lt;/li&gt;
		/// &lt;li&gt;&lt;tt&gt;action&lt;/tt&gt; : The {@link Ext.form.Action Action} object which performed the operation.
		/// &lt;div class=&quot;sub-desc&quot;&gt;The action object contains these properties of interest:&lt;ul&gt;
		/// &lt;li&gt;&lt;tt&gt;{@link Ext.form.Action#response response}&lt;/tt&gt;&lt;/li&gt;
		/// &lt;li&gt;&lt;tt&gt;{@link Ext.form.Action#result result}&lt;/tt&gt; : interrogate for custom postprocessing&lt;/li&gt;
		/// &lt;li&gt;&lt;tt&gt;{@link Ext.form.Action#type type}&lt;/tt&gt;&lt;/li&gt;
		/// &lt;/ul&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/li&gt;
		///
		/// &lt;li&gt;&lt;b&gt;failure&lt;/b&gt; : Function&lt;div class=&quot;sub-desc&quot;&gt;The callback that will be invoked after a
		/// failed transaction attempt. The function is passed the following parameters:&lt;ul&gt;
		/// &lt;li&gt;&lt;tt&gt;form&lt;/tt&gt; : The {@link Ext.form.BasicForm} that requested the action.&lt;/li&gt;
		/// &lt;li&gt;&lt;tt&gt;action&lt;/tt&gt; : The {@link Ext.form.Action Action} object which performed the operation.
		/// &lt;div class=&quot;sub-desc&quot;&gt;The action object contains these properties of interest:&lt;ul&gt;
		/// &lt;li&gt;&lt;tt&gt;{@link Ext.form.Action#failureType failureType}&lt;/tt&gt;&lt;/li&gt;
		/// &lt;li&gt;&lt;tt&gt;{@link Ext.form.Action#response response}&lt;/tt&gt;&lt;/li&gt;
		/// &lt;li&gt;&lt;tt&gt;{@link Ext.form.Action#result result}&lt;/tt&gt; : interrogate for custom postprocessing&lt;/li&gt;
		/// &lt;li&gt;&lt;tt&gt;{@link Ext.form.Action#type type}&lt;/tt&gt;&lt;/li&gt;
		/// &lt;/ul&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/li&gt;
		///
		/// &lt;li&gt;&lt;b&gt;scope&lt;/b&gt; : Object&lt;div class=&quot;sub-desc&quot;&gt;The scope in which to call the
		/// callback functions (The &lt;tt&gt;this&lt;/tt&gt; reference for the callback functions).&lt;/div&gt;&lt;/li&gt;
		///
		/// &lt;li&gt;&lt;b&gt;clientValidation&lt;/b&gt; : Boolean&lt;div class=&quot;sub-desc&quot;&gt;Submit Action only.
		/// Determines whether a Form&apos;s fields are validated in a final call to
		/// {@link Ext.form.BasicForm#isValid isValid} prior to submission. Set to &lt;tt&gt;false&lt;/tt&gt;
		/// to prevent this. If undefined, pre-submission field validation is performed.&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
		/// </param>
		/// <returns>this</returns>
		[ScriptName("doAction")]
		public ext.form.BasicForm DoAction(string actionName, object options)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Performs a predefined action ({@link Ext.form.Action.Submit} or
		/// {@link Ext.form.Action.Load}) or a custom extension of {@link Ext.form.Action}
		/// to perform application-specific processing.
		/// </summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="actionName">
		/// The name of the predefined action type,
		/// or instance of {@link Ext.form.Action} to perform.
		/// </param>
		/// <param name="options">
		/// The options to pass to the {@link Ext.form.Action}.
		/// All of the config options listed below are supported by both the
		/// {@link Ext.form.Action.Submit submit} and {@link Ext.form.Action.Load load}
		/// actions unless otherwise noted (custom actions could also accept
		/// other config options):&lt;ul&gt;
		///
		/// &lt;li&gt;&lt;b&gt;url&lt;/b&gt; : String&lt;div class=&quot;sub-desc&quot;&gt;The url for the action (defaults
		/// to the form&apos;s {@link #url}.)&lt;/div&gt;&lt;/li&gt;
		///
		/// &lt;li&gt;&lt;b&gt;method&lt;/b&gt; : String&lt;div class=&quot;sub-desc&quot;&gt;The form method to use (defaults
		/// to the form&apos;s method, or POST if not defined)&lt;/div&gt;&lt;/li&gt;
		///
		/// &lt;li&gt;&lt;b&gt;params&lt;/b&gt; : String/Object&lt;div class=&quot;sub-desc&quot;&gt;&lt;p&gt;The params to pass
		/// (defaults to the form&apos;s baseParams, or none if not defined)&lt;/p&gt;
		/// &lt;p&gt;Parameters are encoded as standard HTTP parameters using {@link Ext#urlEncode}.&lt;/p&gt;&lt;/div&gt;&lt;/li&gt;
		///
		/// &lt;li&gt;&lt;b&gt;headers&lt;/b&gt; : Object&lt;div class=&quot;sub-desc&quot;&gt;Request headers to set for the action
		/// (defaults to the form&apos;s default headers)&lt;/div&gt;&lt;/li&gt;
		///
		/// &lt;li&gt;&lt;b&gt;success&lt;/b&gt; : Function&lt;div class=&quot;sub-desc&quot;&gt;The callback that will
		/// be invoked after a successful response (see top of
		/// {@link Ext.form.Action.Submit submit} and {@link Ext.form.Action.Load load}
		/// for a description of what constitutes a successful response).
		/// The function is passed the following parameters:&lt;ul&gt;
		/// &lt;li&gt;&lt;tt&gt;form&lt;/tt&gt; : Ext.form.BasicForm&lt;div class=&quot;sub-desc&quot;&gt;The form that requested the action&lt;/div&gt;&lt;/li&gt;
		/// &lt;li&gt;&lt;tt&gt;action&lt;/tt&gt; : The {@link Ext.form.Action Action} object which performed the operation.
		/// &lt;div class=&quot;sub-desc&quot;&gt;The action object contains these properties of interest:&lt;ul&gt;
		/// &lt;li&gt;&lt;tt&gt;{@link Ext.form.Action#response response}&lt;/tt&gt;&lt;/li&gt;
		/// &lt;li&gt;&lt;tt&gt;{@link Ext.form.Action#result result}&lt;/tt&gt; : interrogate for custom postprocessing&lt;/li&gt;
		/// &lt;li&gt;&lt;tt&gt;{@link Ext.form.Action#type type}&lt;/tt&gt;&lt;/li&gt;
		/// &lt;/ul&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/li&gt;
		///
		/// &lt;li&gt;&lt;b&gt;failure&lt;/b&gt; : Function&lt;div class=&quot;sub-desc&quot;&gt;The callback that will be invoked after a
		/// failed transaction attempt. The function is passed the following parameters:&lt;ul&gt;
		/// &lt;li&gt;&lt;tt&gt;form&lt;/tt&gt; : The {@link Ext.form.BasicForm} that requested the action.&lt;/li&gt;
		/// &lt;li&gt;&lt;tt&gt;action&lt;/tt&gt; : The {@link Ext.form.Action Action} object which performed the operation.
		/// &lt;div class=&quot;sub-desc&quot;&gt;The action object contains these properties of interest:&lt;ul&gt;
		/// &lt;li&gt;&lt;tt&gt;{@link Ext.form.Action#failureType failureType}&lt;/tt&gt;&lt;/li&gt;
		/// &lt;li&gt;&lt;tt&gt;{@link Ext.form.Action#response response}&lt;/tt&gt;&lt;/li&gt;
		/// &lt;li&gt;&lt;tt&gt;{@link Ext.form.Action#result result}&lt;/tt&gt; : interrogate for custom postprocessing&lt;/li&gt;
		/// &lt;li&gt;&lt;tt&gt;{@link Ext.form.Action#type type}&lt;/tt&gt;&lt;/li&gt;
		/// &lt;/ul&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/li&gt;
		///
		/// &lt;li&gt;&lt;b&gt;scope&lt;/b&gt; : Object&lt;div class=&quot;sub-desc&quot;&gt;The scope in which to call the
		/// callback functions (The &lt;tt&gt;this&lt;/tt&gt; reference for the callback functions).&lt;/div&gt;&lt;/li&gt;
		///
		/// &lt;li&gt;&lt;b&gt;clientValidation&lt;/b&gt; : Boolean&lt;div class=&quot;sub-desc&quot;&gt;Submit Action only.
		/// Determines whether a Form&apos;s fields are validated in a final call to
		/// {@link Ext.form.BasicForm#isValid isValid} prior to submission. Set to &lt;tt&gt;false&lt;/tt&gt;
		/// to prevent this. If undefined, pre-submission field validation is performed.&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
		/// </param>
		/// <returns>this</returns>
		[ScriptName("doAction")]
		public ext.form.BasicForm DoAction(object actionName, object options)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Performs a predefined action ({@link Ext.form.Action.Submit} or
		/// {@link Ext.form.Action.Load}) or a custom extension of {@link Ext.form.Action}
		/// to perform application-specific processing.
		/// </summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="actionName">
		/// The name of the predefined action type,
		/// or instance of {@link Ext.form.Action} to perform.
		/// </param>
		/// <returns>this</returns>
		[ScriptName("doAction")]
		public ext.form.BasicForm DoAction(string actionName)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Performs a predefined action ({@link Ext.form.Action.Submit} or
		/// {@link Ext.form.Action.Load}) or a custom extension of {@link Ext.form.Action}
		/// to perform application-specific processing.
		/// </summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="actionName">
		/// The name of the predefined action type,
		/// or instance of {@link Ext.form.Action} to perform.
		/// </param>
		/// <returns>this</returns>
		[ScriptName("doAction")]
		public ext.form.BasicForm DoAction(object actionName)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Mark fields in this form invalid in bulk.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="errors">Either an array in the form [{id:&apos;fieldId&apos;, msg:&apos;The message&apos;},...] or an object hash of {id: msg, id2: msg2}</param>
		/// <returns>this</returns>
		[ScriptName("markInvalid")]
		public ext.form.BasicForm MarkInvalid(System.Array errors)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Mark fields in this form invalid in bulk.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="errors">Either an array in the form [{id:&apos;fieldId&apos;, msg:&apos;The message&apos;},...] or an object hash of {id: msg, id2: msg2}</param>
		/// <returns>this</returns>
		[ScriptName("markInvalid")]
		public ext.form.BasicForm MarkInvalid(object errors)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Set values for fields in this form in bulk.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="values">
		/// Either an array in the form:<c>
		/// [{id:&apos;clientName&apos;, value:&apos;Fred. Olsen Lines&apos;},
		/// {id:&apos;portOfLoading&apos;, value:&apos;FXT&apos;},
		/// {id:&apos;portOfDischarge&apos;, value:&apos;OSL&apos;} ]</c>&lt;/pre&gt;
		/// or an object hash of the form:<c>
		/// {
		/// clientName: &apos;Fred. Olsen Lines&apos;,
		/// portOfLoading: &apos;FXT&apos;,
		/// portOfDischarge: &apos;OSL&apos;
		/// }</c>&lt;/pre&gt;
		/// </param>
		/// <returns>this</returns>
		[ScriptName("setValues")]
		public ext.form.BasicForm SetValues(System.Array values)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Set values for fields in this form in bulk.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="values">
		/// Either an array in the form:<c>
		/// [{id:&apos;clientName&apos;, value:&apos;Fred. Olsen Lines&apos;},
		/// {id:&apos;portOfLoading&apos;, value:&apos;FXT&apos;},
		/// {id:&apos;portOfDischarge&apos;, value:&apos;OSL&apos;} ]</c>&lt;/pre&gt;
		/// or an object hash of the form:<c>
		/// {
		/// clientName: &apos;Fred. Olsen Lines&apos;,
		/// portOfLoading: &apos;FXT&apos;,
		/// portOfDischarge: &apos;OSL&apos;
		/// }</c>&lt;/pre&gt;
		/// </param>
		/// <returns>this</returns>
		[ScriptName("setValues")]
		public ext.form.BasicForm SetValues(object values)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Returns the fields in this form as an object with key/value pairs as they would be submitted using a standard form submit.
		/// If multiple fields exist with the same name they are returned as an array.  Note: The values are collected from all enabled HTML input elements within the form, not from
		/// the Ext Field objects. This means that all returned values are Strings (or Arrays of Strings) and that the
		/// value can potentially be the emptyText of a field.
		/// </summary>
		/// <htmlSummary>
		/// &lt;p&gt;Returns the fields in this form as an object with key/value pairs as they would be submitted using a standard form submit.
		/// If multiple fields exist with the same name they are returned as an array.&lt;/p&gt;
		/// &lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; The values are collected from all enabled HTML input elements within the form, &lt;u&gt;not&lt;/u&gt; from
		/// the Ext Field objects. This means that all returned values are Strings (or Arrays of Strings) and that the
		/// value can potentially be the emptyText of a field.&lt;/p&gt;
		/// </htmlSummary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="asString">Pass true to return the values as a string. (defaults to false, returning an Object)</param>
		[ScriptName("getValues")]
		public ext.auto.System_String_Or_System_Object GetValues(bool asString)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Returns the fields in this form as an object with key/value pairs as they would be submitted using a standard form submit.
		/// If multiple fields exist with the same name they are returned as an array.  Note: The values are collected from all enabled HTML input elements within the form, not from
		/// the Ext Field objects. This means that all returned values are Strings (or Arrays of Strings) and that the
		/// value can potentially be the emptyText of a field.
		/// </summary>
		/// <htmlSummary>
		/// &lt;p&gt;Returns the fields in this form as an object with key/value pairs as they would be submitted using a standard form submit.
		/// If multiple fields exist with the same name they are returned as an array.&lt;/p&gt;
		/// &lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; The values are collected from all enabled HTML input elements within the form, &lt;u&gt;not&lt;/u&gt; from
		/// the Ext Field objects. This means that all returned values are Strings (or Arrays of Strings) and that the
		/// value can potentially be the emptyText of a field.&lt;/p&gt;
		/// </htmlSummary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("getValues")]
		public ext.auto.System_String_Or_System_Object GetValues()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Retrieves the fields in the form as a set of key/value pairs, using the {@link Ext.form.Field#getValue getValue()} method.
		/// If multiple fields exist with the same name they are returned as an array.
		/// </summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="dirtyOnly">True to return only fields that are dirty.</param>
		/// <returns>The values in the form</returns>
		[ScriptName("getFieldValues")]
		public object GetFieldValues(bool dirtyOnly)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Retrieves the fields in the form as a set of key/value pairs, using the {@link Ext.form.Field#getValue getValue()} method.
		/// If multiple fields exist with the same name they are returned as an array.
		/// </summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <returns>The values in the form</returns>
		[ScriptName("getFieldValues")]
		public object GetFieldValues()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Add Ext.form Components to this form&apos;s Collection. This does not result in rendering of
		/// the passed Component, it just enables the form to validate Fields, and distribute values to
		/// Fields.
		/// You will not usually call this function. In order to be rendered, a Field must be added
		/// to a {@link Ext.Container Container}, usually an {@link Ext.form.FormPanel FormPanel}.
		/// The FormPanel to which the field is added takes care of adding the Field to the BasicForm&apos;s
		/// collection.
		/// </summary>
		/// <htmlSummary>
		/// Add Ext.form Components to this form&apos;s Collection. This does not result in rendering of
		/// the passed Component, it just enables the form to validate Fields, and distribute values to
		/// Fields.
		/// &lt;p&gt;&lt;b&gt;You will not usually call this function. In order to be rendered, a Field must be added
		/// to a {@link Ext.Container Container}, usually an {@link Ext.form.FormPanel FormPanel}.
		/// The FormPanel to which the field is added takes care of adding the Field to the BasicForm&apos;s
		/// collection.&lt;/b&gt;&lt;/p&gt;
		/// </htmlSummary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <param name="fields"></param>
		/// <returns>this</returns>
		[ScriptName("add")]
		public ext.form.BasicForm Add(params ext.form.Field[] fields)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Add Ext.form Components to this form&apos;s Collection. This does not result in rendering of
		/// the passed Component, it just enables the form to validate Fields, and distribute values to
		/// Fields.
		/// You will not usually call this function. In order to be rendered, a Field must be added
		/// to a {@link Ext.Container Container}, usually an {@link Ext.form.FormPanel FormPanel}.
		/// The FormPanel to which the field is added takes care of adding the Field to the BasicForm&apos;s
		/// collection.
		/// </summary>
		/// <htmlSummary>
		/// Add Ext.form Components to this form&apos;s Collection. This does not result in rendering of
		/// the passed Component, it just enables the form to validate Fields, and distribute values to
		/// Fields.
		/// &lt;p&gt;&lt;b&gt;You will not usually call this function. In order to be rendered, a Field must be added
		/// to a {@link Ext.Container Container}, usually an {@link Ext.form.FormPanel FormPanel}.
		/// The FormPanel to which the field is added takes care of adding the Field to the BasicForm&apos;s
		/// collection.&lt;/b&gt;&lt;/p&gt;
		/// </htmlSummary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		/// <returns>this</returns>
		[ScriptName("add")]
		public ext.form.BasicForm Add()
		{
			throw new System.Exception("Imported - not implemented");
		}
		#endregion
		
		#region Events
		/// <summary>Fires before any action is performed. Return false to cancel the action.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("beforeaction")]
		public event ext.auto.Delegate_ext_form_BasicForm_And_ext_form_Action Beforeaction;
		
		/// <summary>Fires when an action fails.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("actionfailed")]
		public event ext.auto.Delegate_ext_form_BasicForm_And_ext_form_Action Actionfailed;
		
		/// <summary>Fires when an action is completed.</summary>
		/// <definedin>src\widgets\form\BasicForm.js</definedin>
		[ScriptName("actioncomplete")]
		public event ext.auto.Delegate_ext_form_BasicForm_And_ext_form_Action Actioncomplete;
		#endregion
	}
}
